	/**
	 * @overview 自定义组件接口类。可以实现自己扩展到小组件。
	 * 需要注意的是自定义的组件应该在绘图区域里进行绘制。
	 * @component#iChart.Custom
	 * @extend#iChart.Component
	 */
	iChart.Custom = iChart.extend(iChart.Component,{
		configure:function(){
			/**
			 * invoked the super class's  configuration
			 */
			iChart.Custom.superclass.configure.apply(this,arguments);
			
			/**
			 * indicate the component's type
			 */
			this.type = 'custom';
			
			this.set({
				/**
				 * @cfg {Function} 指定绘图的函数。(默认为空函数)
				 */
				drawFn:iChart.emptyFn,
				/**
				 * @cfg {Function} 指定触发此组件事件的函数。(默认为undefined)
				 */
				eventValid:undefined,
				/**
				 * @cfg {Boolean} 是否在动画中调用此组件的绘图函数。为True时，会在每一帧时调用此组件绘图函数。(默认为true)
				 * 此组件的this.variable.animation是一个对象变量。此对象中有3个属性:
				 * animating:是否处于动画中
				 * time : 起始时间
				 * duration:结束时间
				 */
				animating_draw:true
			});
			
			this.registerEvent();
			
		},
		doDraw:function(opts){
			this.get('drawFn').call(this,opts);
		},
		isEventValid:function(e){
			if(iChart.isFunction(this.get('eventValid')))
			return this.get('eventValid').call(this,e);
			return {valid:false};
		},
		doConfig:function(){
			iChart.Custom.superclass.doConfig.call(this);
		}
});//@end